package com.example.notepad.ui;

import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
import android.widget.Toast;

import androidx.activity.EdgeToEdge;
import androidx.appcompat.app.AppCompatActivity;
import androidx.core.graphics.Insets;
import androidx.core.view.ViewCompat;
import androidx.core.view.WindowInsetsCompat;

import com.example.notepad.MainActivity;
import com.example.notepad.R;
import com.example.notepad.bean.NotePad;
import com.example.notepad.db.MyDbHelper;
import com.example.notepad.util.TimeUtil;

public class EditActivity extends AppCompatActivity {

    // 数据库帮助类实例
    private MyDbHelper myDbHelper;

    // 标题编辑框
    public EditText titleEdit;

    // 内容编辑框
    public EditText contentEdit;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        EdgeToEdge.enable(this);
        setContentView(R.layout.activity_edit);
        ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.main), (v, insets) -> {
            Insets systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars());
            v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom);
            return insets;
        });

        // 初始化标题和内容编辑框
        titleEdit = findViewById(R.id.titleEdit);
        contentEdit = findViewById(R.id.contentEdit);

        // 设置返回按钮的点击事件
        findViewById(R.id.backIV).setOnClickListener(v -> finish());

        // 设置清空按钮的点击事件，清空标题和内容编辑框
        findViewById(R.id.clearIV).setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                titleEdit.setText("");
                contentEdit.setText("");
            }
        });

        // 初始化数据库帮助类
        myDbHelper = new MyDbHelper(this);

        // 设置保存按钮的点击事件，保存笔记到数据库
        findViewById(R.id.saveIV).setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                // 获取编辑框中的标题和内容
                String title = titleEdit.getText().toString().trim();
                String content = contentEdit.getText().toString().trim();

                // 检查标题和内容是否为空
                if (content.isEmpty()||title.isEmpty()){
                    Toast.makeText(EditActivity.this,"标题或内容不能为空",Toast.LENGTH_LONG).show();
                    return;
                }

                // 创建笔记对象并设置属性
                NotePad notePad = new NotePad();
                notePad.setTitle(title); // 标题
                notePad.setContent(content); // 内容
                notePad.setTime(TimeUtil.getTime());// 时间

                // 插入笔记到数据库
                myDbHelper.insert(notePad);

                // 显示新增成功弹窗
                Toast.makeText(EditActivity.this,"新增成功",Toast.LENGTH_LONG).show();

                // 跳转到首页
                Intent intent = new Intent(EditActivity.this, MainActivity.class);
                startActivity(intent);

            }
        });
    }

}